from nicegui import ui

# 定义一个全局变量
progress_value = 0.0


# 创建一个更新全局变量的函数
def update_progress(value):
    global progress_value
    progress_value = value
    print(f'Progress updated to {progress_value}')


# 创建 progress 组件，并绑定全局变量
progress_bar = ui.circular_progress(value=progress_value)

# 创建一个滑块来更新进度条和全局变量
ui.slider(min=0, max=100, value=progress_value,
          on_change=lambda e: (progress_bar.set_value(e.value / 100), update_progress(e.value / 100)))

ui.run()
